# This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet 1.1385 -> 1.1386 # mm/swap.c 1.53 -> 1.54 # mm/slab.c 1.94 -> 1.95 # kernel/sched.c 1.198 -> 1.199 # kernel/timer.c 1.63 -> 1.64 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 03/07/15 davidm@tiger.hpl.hp.com 1.1386 # Cset exclude: davidm@tiger.hpl.hp.com|ChangeSet|20030711020407|51156 # Cset exclude: davidm@tiger.hpl.hp.com|ChangeSet|20030709222337|34756 # -------------------------------------------- # diff -Nru a/kernel/sched.c b/kernel/sched.c --- a/kernel/sched.c Wed Jul 16 00:38:59 2003 +++ b/kernel/sched.c Wed Jul 16 00:38:59 2003 @@ -176,7 +176,7 @@ static DEFINE_PER_CPU(struct runqueue, runqueues); #define cpu_rq(cpu) (&per_cpu(runqueues, (cpu))) -#define this_rq() (cpu_rq(smp_processor_id())) /* not __get_cpu_var(runqueues)! */ +#define this_rq() (&__get_cpu_var(runqueues)) #define task_rq(p) cpu_rq(task_cpu(p)) #define cpu_curr(cpu) (cpu_rq(cpu)->curr) #define rt_task(p) ((p)->prio < MAX_RT_PRIO) diff -Nru a/kernel/timer.c b/kernel/timer.c --- a/kernel/timer.c Wed Jul 16 00:38:59 2003 +++ b/kernel/timer.c Wed Jul 16 00:38:59 2003 @@ -160,7 +160,7 @@ */ void add_timer(struct timer_list *timer) { - tvec_base_t *base = &per_cpu(tvec_bases, get_cpu()); + tvec_base_t *base = &get_cpu_var(tvec_bases); unsigned long flags; BUG_ON(timer_pending(timer) || !timer->function); @@ -171,7 +171,7 @@ internal_add_timer(base, timer); timer->base = base; spin_unlock_irqrestore(&base->lock, flags); - put_cpu(); + put_cpu_var(tvec_bases); } /*** @@ -234,7 +234,7 @@ return 1; spin_lock_irqsave(&timer->lock, flags); - new_base = &per_cpu(tvec_bases, smp_processor_id()); + new_base = &__get_cpu_var(tvec_bases); repeat: old_base = timer->base; @@ -792,7 +792,7 @@ */ static void run_timer_softirq(struct softirq_action *h) { - tvec_base_t *base = &per_cpu(tvec_bases, smp_processor_id()); + tvec_base_t *base = &__get_cpu_var(tvec_bases); if (time_after_eq(jiffies, base->timer_jiffies)) __run_timers(base); diff -Nru a/mm/slab.c b/mm/slab.c --- a/mm/slab.c Wed Jul 16 00:38:59 2003 +++ b/mm/slab.c Wed Jul 16 00:38:59 2003 @@ -2457,7 +2457,7 @@ static void reap_timer_fnc(unsigned long data) { int cpu = smp_processor_id(); - struct timer_list *rt = &per_cpu(reap_timers, cpu); + struct timer_list *rt = &__get_cpu_var(reap_timers); cache_reap(); mod_timer(rt, jiffies + REAPTIMEOUT_CPUC + cpu); diff -Nru a/mm/swap.c b/mm/swap.c --- a/mm/swap.c Wed Jul 16 00:38:59 2003 +++ b/mm/swap.c Wed Jul 16 00:38:59 2003 @@ -113,35 +113,34 @@ void lru_cache_add(struct page *page) { - struct pagevec *pvec = &per_cpu(lru_add_pvecs, get_cpu()); + struct pagevec *pvec = &get_cpu_var(lru_add_pvecs); page_cache_get(page); if (!pagevec_add(pvec, page)) __pagevec_lru_add(pvec); - put_cpu(); + put_cpu_var(lru_add_pvecs); } void lru_cache_add_active(struct page *page) { - struct pagevec *pvec = &per_cpu(lru_add_active_pvecs, get_cpu()); + struct pagevec *pvec = &get_cpu_var(lru_add_active_pvecs); page_cache_get(page); if (!pagevec_add(pvec, page)) __pagevec_lru_add_active(pvec); - put_cpu(); + put_cpu_var(lru_add_active_pvecs); } void lru_add_drain(void) { - int cpu = get_cpu(); - struct pagevec *pvec = &per_cpu(lru_add_pvecs, cpu); + struct pagevec *pvec = &get_cpu_var(lru_add_pvecs); if (pagevec_count(pvec)) __pagevec_lru_add(pvec); - pvec = &per_cpu(lru_add_active_pvecs, cpu); + pvec = &__get_cpu_var(lru_add_active_pvecs); if (pagevec_count(pvec)) __pagevec_lru_add_active(pvec); - put_cpu(); + put_cpu_var(lru_add_pvecs); } /*